package com.ruoyi.product.domain;

import com.ruoyi.product.response.MallProductResponse;

import java.util.Date;

/**
 * @className: ProductDoc
 * @Description: TODO
 * @version: v1.８.0
 * @author: 刘洋朔
 * @date: 2025/8/7 22:00
 */
public class ProductDoc {
    private String id;
    private String name;
    private String productDesc;
    private String type;
    private String typeIds;
    private String img;
    private String carouselImages;
    private Long commentCount;
    private Long collectCount;
    private String brand;
    private String status;
    private String unit;
    private String keywords;
    private String ruleAttrId;
    private Long revision;
    private String typeName;
    private String brandName;
    private String createBy;
    // @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date createTime;
    private String updateBy;
    // @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date updateTime;
    private String remark;
    // 无参构造方法
    public ProductDoc() {
    }
    // 从MallProductInfoResponse构造ProductDoc的构造方法
    public ProductDoc(MallProductResponse response) {
        this.id = response.getId();
        this.name = response.getName();
        this.productDesc = response.getProductDesc();
        this.type = response.getType();
        this.typeIds = response.getTypeIds();
        this.img = response.getImg();
        this.carouselImages = response.getCarouselImages();
        this.commentCount = response.getCommentCount();
        this.collectCount = response.getCollectCount();
        this.brand = response.getBrand();
        this.status = response.getStatus();
        this.unit = response.getUnit();
        this.keywords = response.getKeywords();
        this.ruleAttrId = response.getRuleAttrId();
        this.revision = response.getRevision();
        this.typeName = response.getTypeName();
        this.brandName = response.getBrandName();
        this.createBy = response.getCreateBy();
        this.createTime = response.getCreateTime();
        this.updateBy = response.getUpdateBy();
        this.updateTime = response.getUpdateTime();
        this.remark = response.getRemark();
    }
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getProductDesc() {
        return productDesc;
    }
    public void setProductDesc(String productDesc) {
        this.productDesc = productDesc;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public String getTypeIds() {
        return typeIds;
    }
    public void setTypeIds(String typeIds) {
        this.typeIds = typeIds;
    }
    public String getImg() {
        return img;
    }
    public void setImg(String img) {
        this.img = img;
    }
    public String getCarouselImages() {
        return carouselImages;
    }
    public void setCarouselImages(String carouselImages) {
        this.carouselImages = carouselImages;
    }
    public Long getCommentCount() {
        return commentCount;
    }
    public void setCommentCount(Long commentCount) {
        this.commentCount = commentCount;
    }
    public Long getCollectCount() {
        return collectCount;
    }
    public void setCollectCount(Long collectCount) {
        this.collectCount = collectCount;
    }
    public String getBrand() {
        return brand;
    }
    public void setBrand(String brand) {
        this.brand = brand;
    }
    public String getStatus() {
        return status;
    }
    public void setStatus(String status) {
        this.status = status;
    }
    public String getUnit() {
        return unit;
    }
    public void setUnit(String unit) {
        this.unit = unit;
    }
    public String getKeywords() {
        return keywords;
    }
    public void setKeywords(String keywords) {
        this.keywords = keywords;
    }
    public String getRuleAttrId() {
        return ruleAttrId;
    }
    public void setRuleAttrId(String ruleAttrId) {
        this.ruleAttrId = ruleAttrId;
    }
    public Long getRevision() {
        return revision;
    }
    public void setRevision(Long revision) {
        this.revision = revision;
    }
    public String getTypeName() {
        return typeName;
    }
    public void setTypeName(String typeName) {
        this.typeName = typeName;
    }
    public String getBrandName() {
        return brandName;
    }
    public void setBrandName(String brandName) {
        this.brandName = brandName;
    }
    public String getCreateBy() {
        return createBy;
    }
    public void setCreateBy(String createBy) {
        this.createBy = createBy;
    }
    public Date getCreateTime() {
        return createTime;
    }
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
    public String getUpdateBy() {
        return updateBy;
    }
    public void setUpdateBy(String updateBy) {
        this.updateBy = updateBy;
    }
    public Date getUpdateTime() {
        return updateTime;
    }
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }
    public String getRemark() {
        return remark;
    }
    public void setRemark(String remark) {
        this.remark = remark;
    }
}
